<HTML>
<HEAD>
<TITLE>Ogre3D Interpolation Demo Manual</TITLE>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</HEAD>
<link href="RaknetManual.css" rel="stylesheet" type="text/css">
<meta name="title" content="RakNet - Advanced multiplayer game networking API">
</HEAD><BODY BGCOLOR="#ffffff" LINK="#003399" vlink="#003399" alink="#003399" LEFTMARGIN="0" TOPMARGIN="0" MARGINWIDTH="0" MARGINHEIGHT="0"">
<span style="background-color: rgb(255, 255, 255);"><img src="RakNet_Icon_Final-copy.jpg" alt="Oculus VR, Inc." width="150" height="150"></span><BR>
<BR>
<table width="100%" border="0">
  <tr>
    <td bgcolor="#2c5d92" class="RakNetWhiteHeader">&nbsp;Ogre 3D Interpolation Demo</td>
  </tr>
</table>
<TABLE BORDER="0" CELLPADDING="10" CELLSPACING="0" WIDTH="100%">
  <TR>
    <TD><p><span class="RakNetBlueHeader">Demonstrates 3D interpolation</span><BR>
        <BR>
			  
	The Ogre 3D interpolation demo uses the graphics engine Ogre 3D to render popcorn popping.<br>
      <br>
      The server has a bunch of popcorn  kernels, which pops and flies around. After a short while all the  popcorn is deleted and respawned. <br>
      <br>
      The client is a dumb client in that the client does not do any  physics or handle the details of spawning or popping the corn kernels. <br>
      <br>
      <em>Specific to Ogre:</em><br>
<br>
How to interpolate between the real and the visual position using a  helper class TransformationHistory. Given a time in the past, it will  tell you where you were then, using interpolation. If you hold down  space you can see the client run non-interpolated, which is very choppy  indeed, as it only sends 4 times a second. Let go of space and it's  smooth again. <br>
<br>
<em>Covered as part of RakNet: </em><br>
<br>
ReplicaManager3 class, which automatically handles the networking  for creation, destruction, and serialization of the popcorn kernels. <br>
<br>
To run it, start two instances on the same computer. Press 's' for  server on one instance, 'c' for client on the other. Hold down space to  see the client run without interpolation. <br>
<br>
If you want to run it over the internet. change the hardcoded SERVER_IP variable to the server's address.</p>
    <p><em>The code is located at DependentExtensions\Ogre3DInterpDemo</em></p>
  </TR>
</TABLE>
<table width="100%" border="0">
  <tr>
    <td bgcolor="#2c5d92" class="RakNetWhiteHeader">&nbsp;Dependencies</td>
  </tr>
</table>
<TABLE BORDER="0" CELLPADDING="10" CELLSPACING="0" WIDTH="100%">
<TR>
  <TD>Ogre 3D must be installed. It assumes you  have OGRE_SDK as an environment variable. If not, change the project  properties accordingly. <BR>
  	  
  	    <BR>
  </TR>
</TABLE>
	  <table width="100%" border="0">
      <tr>
        <td bgcolor="#2c5d92" class="RakNetWhiteHeader"><img src="spacer.gif" width="8" height="1">See Also</td>
      </tr>
    </table>
    <TABLE BORDER="0" CELLPADDING="10" CELLSPACING="0" WIDTH="100%">
      <TR>
        <TD> <p><a href="replicamanager3.html">ReplicaManager3</a><br>
          <A HREF="index.html">Index</A><BR>          
            </p>
        </TD>
      </TR>
    </TABLE></TD>
</TR></TABLE>
</BODY>
</HTML>
